home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Medal Software 2
/
Gold Medal Software Volume 2 (Gold Medal) (1994).iso
/
utils
/
scrlit18.arj
/
SCROLLIT.DOC
< prev
next >
Wrap
Text File
|
1993-10-19
|
39KB
|
916 lines
SCROLLit
Advanced ScrollBack Buffer
Version 1.8
Copyright 1992-93
All Rights Reserved
By
Bromfield Software Products
P.O. Box 70081
Ottawa, Ontario
K2P 2M3
Canada
Compuserve 71054,3051
_______
____|__ | (TM)
--| | |-------------------
| ____|__ | Association of
| | |_| Shareware
|__| o | Professionals
-----| | |---------------------
|___|___| MEMBER
License
SCROLLit is NOT free software, but is being distributed as
"shareware".
Non-registered users of this software are granted a limited
license to use this program for a trial period of thirty days for
the purpose of determining if SCROLLit is suitable for their
needs. At the end of this trial period, you should either
register your copy or discontinue using SCROLLit.
Whether or not you register SCROLLit, we encourage you to share
the unregistered version of the program with your friends and
colleagues and to upload it to any BBS's you use. Please be sure
to keep all the files together; a complete list of files appears
in README.DOC.
Introduction - What is SCROLLit?
SCROLLit is a memory resident (TSR) program that captures, in
full color, the lines of text that scroll off the top of the
video screen and stores them in an XMS, EMS or conventional
memory 'scrollback' buffer of a size specified by the user. A
fast compression technique is used to store more than twice the
number of lines in the available buffer space.
SCROLLit can then be activated or 'popped up' over any non-
graphical program by pressing the scroll lock key. Once
activated, SCROLLit will let you scroll back through this saved
information, line by line or page by page. SCROLLit has a fast
search capability as well as a block-write feature that allows
you to mark a block of lines for writing to a disk file or
sending to your printer.
1
Capturing Lines
Once resident, SCROLLit monitors video activity to capture text
lines that are scrolled off the top of the screen. You may wish
to look back through the output of the DIR command in DOS, or
review the progress of a Bulletin Board (BBS) session while using
your communications software, for example.
A program can scroll the screen in three ways: DOS (interrupt
21h) function calls, BIOS (interrupt 10h) function calls, and
direct writing to video memory. SCROLLit is able to capture both
DOS and BIOS scrolling, but not the scrolling performed by direct
screen writing. Fortunately, many programs that use direct screen
writing can be configured to use BIOS function calls. Appendix 1
describes how to reconfigure two popular communications programs
(Qmodem and Telix) to use BIOS scrolling, rather than direct
screen writing.
Some programs clear the screen rather than scrolling old output
off the top of the screen. Monitoring DOS and BIOS scrolling
would not capture this output because no scrolling is involved.
To get around this problem, SCROLLit monitors BIOS 'clear-screen'
requests. When a clear-screen request has been made, SCROLLit
copies the entire screen to the scrollback buffer before the BIOS
clears the screen. As a result, you will find that SCROLLit
captures more output than most other scrollback buffer utilities.
Disable Screen Capture Temporarily
SCROLLit's capturing of screen scrolling and clear-screens can be
temporarily disabled by typing:
SCROLLit /-
Screen capturing can later be re-enabled with the /+ command line
switch. It may be useful to disable screen capturing before
executing a program that generates a lot of scrolling or clear-
screens, but that you do not wish captured in your scrollback
buffer. WordPerfect is a good example of this. In WordPerfect, as
you page through your document, SCROLLit would normally capture
each page into the scrollback buffer, potentially taking up a lot
of buffer space. You may find it convenient to execute
WordPerfect using a simple batch file as follows:
CD\WP51
CLS
SCROLLIT /-
WP51
SCROLLIT /+
SCROLLit can still be popped up when capturing is disabled, so
that you can still scroll back through lines that were captured
before screen capture was disabled.
2
Compressing the scrollback buffer
Each line that SCROLLit saves contains 80 characters and 80 color
attributes, requiring a total of 160 bytes storage. A full 25
line screen requires 4000 bytes of storage space. There is
usually a lot of blank space on a screen, however, and the color
attributes are often unchanged for an entire line of text and
sometimes the whole screen. SCROLLit uses a very fast run-length-
encoded compression algorithm to shrink the amount of space
required to save a line of text and is typically able to compress
the scrollback buffer by 60 to 70%, meaning that more than twice
the number of lines of can be saved in the available buffer
space.
The extent to which SCROLLit has been able to compress the
scrollback buffer is displayed when the help key (F1) is pressed.
╒═════════════════════════════════╕
For example: │ Number of lines saved: 2046 │
│ Average bytes per line: 43 │
│ Percent compression: 73% │
╘═════════════════════════════════╛
There is some overhead in setting up the buffer, which means that
SCROLLit will obtain better compression with a larger buffer
size.
Installing and Unloading SCROLLit
SCROLLit is a memory resident (TSR) program that is installed in
memory by typing SCROLLit followed by the desired scrollback
buffer size in kilobytes. The buffer size must be at least 20k.
For example, to install SCROLLit with a 100k scrollback buffer,
type:
SCROLLit 100
You may wish to store this command in your autoexec.bat file to
ensure that SCROLLit is loaded whenever you turn on your
computer. You will need to prefix the command with the name of
the directory where SCROLLit is stored, or store SCROLLit in a
directory that you have set in your path command.
SCROLLit can be unloaded from memory with the /U command line
option, provided that other TSR's have not been loaded after it:
SCROLLit /U
Installing and unloading of SCROLLit is this simple. There are
other command line options that will be discussed throughout this
document. A complete list of command line options is provided in
Appendix 3, and can be displayed by typing:
SCROLLit /?
3
Memory Usage
The SCROLLit program itself takes up about 9k of conventional
memory, while the scrollback buffer may be stored in XMS, EMS or
conventional memory. SCROLLit will store the scrollback buffer in
XMS memory if there is enough XMS memory available to store a
buffer of the size you request. If adequate XMS memory is not
available, SCROLLit will store the buffer in EMS memory. If
adequate EMS memory is not available, then conventional memory
will be used.
If there is not enough memory of any type available, SCROLLit
will produce a summary of the available memory on your computer,
so that you can determine what size of buffer will fit. The
amount of available memory refers to the memory available for use
by SCROLLit and is typically less than the total memory in your
computer because other programs may already have reserved some of
this memory for their own use.
SCROLLit will automatically store the scrollback buffer in XMS
memory if enough is available. Under some circumstances, you may
wish to keep this XMS memory available for another application.
The /E command line option tells SCROLLit to store the buffer in
EMS memory, even if enough XMS memory is available. Similarly,
the /C command line option tells SCROLLit to store the buffer in
conventional memory even if adequate XMS or EMS memory exists.
For example, to install SCROLLit with a 160k buffer in EMS
memory, type:
SCROLLit 160 /E
In addition to XMS, EMS and conventional memory, there are two
other types of memory that may be available on your computer:
upper memory and raw extended memory.
Upper memory refers to the memory between the top of conventional
memory (the first 640k) and 1024k. The SCROLLit program (and
buffer) can be stored in this type of memory rather than in
conventional memory by using the 'loadhigh' capability of your
memory manager, for example the LOADHIGH command in DOS Version 5
or the LOADHI program in Quarterdeck's QEMM. Storing your TSR
programs in upper memory leaves more of your valuable
conventional memory available for your other programs. Refer to
your DOS 5 or memory manager documentation for instructions on
how to load TSR's into upper memory.
Raw extended memory refers to memory above the 1024k limit on
your computer that has not yet been converted into usable XMS or
EMS memory by your memory manager. If SCROLLit detects that you
don't have XMS or EMS installed, but you do have raw extended
memory available, the program will advise you to install the
necessary software drivers to convert this memory into a more
usable form. For example, this memory can be converted into XMS
memory by adding DEVICE=HIMEM.SYS to your config.sys file.
4
Activating SCROLLit
SCROLLit can be activated ('popped up') over any text-based (i.e.
non graphical) application by pressing the Scroll Lock key (the
SCROLLit 'hotkey'). If you press the Scroll Lock key while in
graphics mode, SCROLLit will beep your speaker to remind you that
it cannot be activated while you are in graphics mode.
There are some circumstances where SCROLLit will decide that it
is not appropriate to popup over a text-based application and
will beep instead. (Technically, SCROLLit will not interrupt a
DOS function call, and will wait a second or so for DOS to become
available. Other TSR's are not necessarily so careful, and may
interrupt DOS. SCROLLit will therefore not popup if this type of
TSR has already interrupted DOS or if the foreground program
keeps DOS busy for an extended period of time.)
Once SCROLLit is installed, use the key combination Alt-Scroll
Lock (press the Alt key and the Scroll Lock key at the same time)
in order to turn your Scroll Lock light on and off.
If you are using an unregistered copy of SCROLLit, a shareware
screen may appear when you press the hotkey to remind you to
please register your copy of SCROLLit. This screen does not
appear on registered copies of the program. Please refer to the
section 'How to Register SCROLLit' for more details on how to
remove this shareware screen.
╒══════════════════════ SCROLLit Version 1.8 ═══════════════════════╕
│ │
│ SCROLLit is Shareware. Please try it for 30 days to determine │
│ if it meets your needs. If you continue to use the program │
│ beyond the trial period, you are required to pay the registration │
│ fee. For more information, type SCROLLit /R at the DOS prompt. │
│ │
│ The registration fee is $20 CDN for Canadian residents, or │
│ $17 US for U.S. and overseas addresses. │
│ │
│ Remit to: Bromfield Software Products Association of │
│ P.O. Box 70081 Shareware │
│ Ottawa, Ontario K2P 2M3 Professionals │
│ CANADA MEMBER │
│ │
│ Registration removes this screen. Press F5 to continue. │
│ │
╘═════════ Copyright 1992-93 Bromfield Software Products ═══════════╛
Once you have activated SCROLLit, you can exit by pressing the
escape (Esc) key or pressing the Scroll Lock key a second time.
The hotkey can be changed with the /H command line switch as
explained in the section 'Customizing SCROLLit - Changing the
Hotkey'.
5
Using SCROLLit - Scrolling the scrollback buffer
Once you have activated SCROLLit, you can scroll back through the
buffer using the standard screen scrolling commands: and to
scroll line by line, Page Up and Page Down to scroll page by
page, and the Home and End keys to go to the beginning or end of
the scrollback buffer. The bottom line on your screen, the status
line, will indicate your current position within the buffer.
'Line 48 of 2106' means that the top line on the screen is the
48th line in a buffer holding a total of 2106 lines of text.
The Ctrl-Home key combination can be pressed to return to the
same position in the scrollback buffer you were in when you last
exited SCROLLit. It is possible that this line has since scrolled
off the top of the buffer, in which case, SCROLLit will beep and
place you at the top (Line 1) of the buffer.
Using SCROLLit - Searching the scrollback buffer
There are three commands for searching through the scrollback
buffer for a target string. Press the letter B to search Backward
through the buffer from your current location. Press the letter F
for a Forward search from your current location. Press the letter
A to search Again for the next occurrence of the same target
string.
SCROLLit performs a fast, case-insensitive search for the target
string that you provide. When SCROLLit finds an occurrence of the
target, the screen will be repositioned to that location in the
scrollback buffer and the target string will be highlighted by
reverse video to show you where it was found. If the target is
not found, SCROLLit will beep the speaker and give you a warning
message on the status line.
6
Using SCROLLit - Block-writing to file or printer
Block-writing refers to the ability to mark a block of lines in
the buffer and then write this block to a specified disk file or
to your printer. Press the letter W to invoke block-Writing.
There are three steps to writing a block of lines: mark the
beginning of the block, mark the end of the block, and then
specify the disk filename or printer for output. If you are part
way through these steps, you can back up by pressing the escape
(Esc) key.
Use the cursor keys to move to the location of the first line in
the block that you wish to mark. The row is highlighted by
reverse video and is marked as the beginning of your block by
pressing the enter key. Then the cursor keys are again used, this
time to chose the end of the block, again marked by pressing the
enter key. Once you have pressed the enter key a second time, the
block of lines will be marked and highlighted in reverse video.
After marking the block of lines, SCROLLit will prompt you for
the disk filename where these lines should be saved. The default
filename is SCROLL.IT in the current directory, but can easily be
changed. If a file with that name already exists, SCROLLit will
ask you if you wish to overwrite this file or append this block
of lines to the end of the file.
To send the block of lines to your printer type PRN rather than a
filename. (Type LPT2 to send to LPT2.)
7
Using SCROLLit - the Help screen
The help screen, brought up by pressing the F1 key, summarizes
the commands discussed in the last two pages. In addition to the
command summary reproduced below, the Help screen includes a
summary of the size of the buffer and the degree of compression
as discussed in the section 'Compressing the scrollback buffer'.
╒═══════════════════════════════════════════╕
│ Scroll up/down 1 line │
│ PgUp PgDn Scroll up/down 1 page │
│ Home End Go to beginning/end of buffer │
│ F Search forward for text │
│ B Search backward for text │
│ A Search again, same text │
│ W Write block of text │
│ to file or printer │
│ Ctrl-Home Return to last position │
│ Esc Exit SCROLLit │
╘═══════════════════════════════════════════╛
╒═════════════════════════════════╕
│ Number of lines saved: 2046 │
│ Average bytes per line: 43 │
│ Percent compression: 73% │
╘═════════════════════════════════╛
How to register SCROLLit
The registration fee for SCROLLit is $17 U.S. or $20 CDN for
Canadian residents. The ORDERFRM.DOC file can be printed on your
printer as a convenient form to use for registration.
When you register SCROLLit, you will be mailed a registration key
that is derived from the spelling of your name. Your name is
specified with the /N command line option and the eight character
registration key is specified with the /K command line option.
Installing SCROLLit with a 100k scrollback buffer would look
like:
SCROLLit 100 /N=John_P._Doe /K=12345abc
Note that underscores are used instead of spaces when specifying
your name and that both the name and the key can be specified in
either upper or lower case. SCROLLit will check to see if the
registration key is valid and correctly matches the specified
name. If specified correctly, SCROLLit will no longer bring up
the shareware screen when activated.
Typically, you will be installing SCROLLit in your autoexec.bat
file, which should be edited to include the /N and /K command
line options as illustrated above. This registration key is for
your personal use only. Please do not reveal it to others.
8
Customizing SCROLLit - Changing the Color Settings
By default, SCROLLit uses a color scheme of blue and white
against a cyan background. While this combination looks fine on a
color monitor, some users of LCD notebooks report that these
color attributes lack definition when translated into the shades
of grey that these machines use to represent different colors.
SCROLLit has two command line switches that allow the user to
override the defaults and specify the color attributes used in
color video mode 3 and in monochrome video mode 7.
/AC=a1,a2,a3,a4 Attributes used in color video mode 3.
/AM=a1,a2,a3,a4 Attributes used in mono video mode 7.
Default Values
================
Color Mono
a1 = Border color 30 70
a2 = Normal Text 31 70
a3 = Highlighted Text 3F 70
a4 = Text being edited 0F 0F
Color attributes are specified as two digit hexadecimal numbers.
The first digit specifies the background color and the second
digit specifies the foreground color.
First Digit (Background) Second Digit (Foreground)
0 -- Black 0 -- Black
1 -- Blue 1 -- Blue
2 -- Green 2 -- Green
3 -- Cyan 3 -- Cyan
4 -- Red 4 -- Red
5 -- Magenta 5 -- Magenta
6 -- Brown 6 -- Brown
7 -- Grey 7 -- White
8 -- Grey
9 -- Intense Blue
A -- Intense Green
B -- Intense Cyan
C -- Intense Red
D -- Intense Magenta
E -- Intense Yellow
F -- Intense White
These commands can be used to set the color attributes during
installation or after SCROLLit has already been installed. For
example, to install SCROLLit with a 100k buffer and customized
color attributes for use during color mode 3, type:
SCROLLit 100 /AC=20,27,2F,07
9
Customizing SCROLLit - Changing the Hotkey
By default, SCROLLit uses the Scroll Lock key as the hotkey, but
this can be changed with the /H=skk command line parameter, where
s is a single digit hexadecimal SHIFT code and kk is a two digit
hexadecimal KEY code (see below). For example, to install
SCROLLit with a 100k buffer and "Alt-Space" as the hotkey type:
SCROLLit 100 /h=839
Single Digit SHIFT code
-----------------------------------------------------------
Alt * * * * * * * *
Ctrl * * * * * * * *
Left Shift * * * * * * * *
Right Shift * * * * * * * *
-----------------------------------------------------------
SHIFT code: 0 1 2 3 4 5 6 7 8 9 A B C D E F
Two Digit KEY Code
---------------------------------------------------------------
Hex | Hex | Hex
Key Code | Key Code | Key Code
===============================================================
Esc 01 | A 1E | F1 3B
!1 02 | S 1F | F2 3C
@2 03 | D 20 | F3 3D
#3 04 | F 21 | F4 3E
$4 05 | G 22 | F5 3F
%5 06 | H 23 | F6 40
^6 07 | J 24 | F7 41
&7 08 | K 25 | F8 42
*8 09 | L 26 | F9 43
(9 0A | :; 27 | F10 44
)0 0B | "' 28 | NumLock 45
_- 0C | ~` 29 | ScrollLock 46
+= 0D | Left Shift 2A | 7 Home 47
Backspace 0E | |\ 2B | 8 UpArrow 48
Tab 0F | Z 2C | 9 PgUp 49
Q 10 | X 2D | - (grey) 4A
W 11 | C 2E | 4 Left Arrow 4B
E 12 | V 2F | 5 (keypad) 4C
R 13 | B 30 | 6 Right Arrow 4D
T 14 | N 31 | + (grey) 4E
Y 15 | M 32 | 1 End 4F
U 16 | <, 33 | 2 Down Arrow 50
I 17 | >. 34 | 3 PgDn 51
O 18 | ?/ 35 | 0 Ins 52
P 19 | Right Shift 36 | . Del 53
{[ 1A | PrtSc * 37 | F11 57
}] 1B | Alt 38 | F12 58
Enter 1C | Spacebar 39 |
Ctrl 1D | Caps Lock 3A |
10
Appendix 1 - SCROLLit and Communications Software
SCROLLit can be used to scrollback through your communications
session provided you configure your communications software to
use BIOS screen scrolling rather than direct screen writing.
Qmodem scrolls the screen using direct screen writing by default,
but allows BIOS scrolling by setting the 'Jump scroll' option.
Press Alt-N / Video / Toggles / Jump scroll.
Telix also scrolls the screen uses direct screen writing by
default, but will use the BIOS for all video activity (both
scrolling and writing characters to the screen) when the BIOS
option is set. Press Alt-O / Screen / ScreenWrite / Bios. The
Status line should not be configured for the top of the screen.
It can be set to the bottom of the screen or disabled by pressing
Alt-O / Terminal / D-Status Line / None or Bottom.
Procomm Plus uses BIOS scrolling with no option for direct screen
writing. No reconfiguring is required. The shareware Procomm
Version 2.4.3 also uses BIOS scrolling. There is an option for
direct screen writing, but it does not effect scrolling (only
writing characters to the screen). No reconfiguring is required
for SCROLLit to capture scrolled output from either Procomm or
Procomm Plus.
SCROLLit has a wider range of features than the scrollback
buffers built into these communications packages (i.e. full
color, string search, block-writing, compression). Furthermore,
when you use SCROLLit, your entire session is saved until it
scrolls off the top of the buffer, while the lines stored in
built-in scrollback buffers are lost when you exit the program.
You can use an external scrollback program such as SCROLLit just
as you can use external protocol drivers to augment the
capabilities of your communications software.
Special Note for Compuserve Users
Compuserve sessions can be set for line-oriented mode, where old
output scrolls off the top of the screen, or for page-oriented
mode, where Compuserve sends a page of information, and after
your response, clears the page before transmitting the next page.
In page-oriented mode, the screen is never scrolled, so SCROLLit
intercepts the 'clear-screen' requests in order to capture your
past output.
SCROLLit will capture your Compuserve session whether you have
set a line-oriented or a page-oriented terminal type. You can
change from one mode to another by typing SET TERMINAL.
11
Appendix 2 - Using SCROLLit with Desqview
SCROLLit is Desqview aware and can be successfully loaded within
a Desqview window. SCROLLit will detect that it is operating in a
Desqview window and will capture scrolled lines from the Desqview
video buffer rather than the hardware video buffer.
SCROLLit must be installed within a Desqview window in order to
capture scrolling within Desqview. You may want to install
SCROLLit and the DVANSI driver in your DOS window, for example.
The easiest way to do this is by setting up a small batch file
with the following two lines:
DVANSI
SCROLLit 100
If you called this file, say, mydos.bat, then you would specify
mydos in the program field in CP (Change a Program). Then
whenever you opened this particular window, Desqview would
execute this batch file, loading both your ansi driver and
SCROLLit.
Normally, SCROLLit would only allow one copy of itself in memory
at one time (attempting to load a second copy yields an 'Already
installed' message). The one exception to this rule is Desqview,
where it is possible to have one copy of SCROLLit in each
Desqview window. (Trying to load two copies in one window will,
of course, produce the 'Already installed' message.)
Desqview Optimization
SCROLLit gives up it's time slice during idle periods in order to
optimize the performance of other Desqview windows.
By default, SCROLLit hooks the timer interrupt in order to
provide a timeout feature and to allow the program to popup in a
wide variety of situations. Most TSR's hook the timer in this
way. However, upon detecting the timer hook, Desqview will wait
one extra timer tick before giving up the time slice to ensure
that the timer itself is serviced. As a result, any program or
TSR that hooks the timer interrupt (either hardware interrupt 08h
or software interrupt 1Ch) will reduce the performance of your
other Desqview windows. To fully optimize Desqview performance,
SCROLLit should by installed with the /NT (for NoTimer) command
line switch which allows installation without the timer hook (the
BIOS keyboard interrupt is hooked instead). For example, to
install SCROLLit with a 100k buffer and no timer hook, type:
SCROLLIT 100 /NT
Without a timer hook, there will be some situations where
SCROLLit will not be able to popup. Users will have to experiment
with this option to determine if this is inconvenient.
12
Appendix 3 - SCROLLit Command Line Options
nnn Scrollback buffer size in kilobytes. Must be at least
20k.
/E Use EMS memory for scrollback buffer storage, even if
XMS is available.
/C Use conventional memory for scrollback buffer storage,
even if XMS or EMS is available.
/N= Specify your name as given for registration. Use
underscores instead of spaces as in John_P._Doe. Case
insensitive.
/K= Specify the eight character registration key that is
sent upon registration. Case insensitive.
/H= Select alternate hotkey.
/AC= Select color attributes for color video mode 3.
/AM= Select color attributes for mono video mode 7.
/NT Install SCROLLit without hooking the timer (for
Desqview users).
/- Temporarily disable screen capture.
/+ Re-enable screen capture.
/R Information on how to register.
/? Display command line summary.
/U Attempt to unload SCROLLit from memory. Will not unload
if other TSR's were loaded after SCROLLit.
13
Technical Support
If you have questions, problems, or ideas for new features,
please contact Bromfield Software Products by postal mail to our
Ottawa address or via Compuserve electronic mail to User ID
71054,3051.
Acknowledgements
SCROLLit was originally created to provide a scrollback
capability for a number of different software products developed
by Bromfield Software Products. With the shareware release we
have received useful feedback from SCROLLit users throughout
Canada, the United States, and around the world. We wish to thank
all users who have sent us reports of possible bugs and provided
ideas for useful new features. Special thanks to those SCROLLit
users that have taken the time to help with beta testing of new
versions: Phil Webb, Jim McKeown, Laurent Dube, Karl Schopmeyer,
George Havach, Christian Burger, Gary MacDonald, Prof. Timo Salmi
(of the University of Vaasa, Finland), Bruce Judd, Bruce Francis,
Tony Gozdz, Robert Newton and Michael Broomfield. We would also
like to thank all those who have supported the shareware concept
by registering their copy of SCROLLit.
Disclaimer
Use of this program acknowledges this disclaimer of warranty:
"This program is supplied as is. Bromfield Software Products
disclaims all warranties, express or implied, including, without
limitation, the warranties of merchantability and of fitness of
this program for any purpose. Bromfield Software Products assumes
no liability for damages direct or consequential, which may
result from the use of this program."
Trademarks
All trademarks and copyrights belong to their respective holders.
Ombudsman
This program is produced by a member of the Association of
Shareware Professionals (ASP). ASP wants to make sure that the
shareware principle works for you. If you are unable to resolve
a shareware-related problem with an ASP member by contacting the
member directly, ASP may be able to help. The ASP Ombudsman can
help you resolve a dispute or problem with an ASP member, but
does not provide technical support for members' products. Please
write to the ASP Ombudsman at 545 Grover Road, Muskegon, MI USA
49442-9427, FAX 616-788-2765 or send a CompuServe message via
CompuServe Mail to ASP Ombudsman, 70007,3536.
14